home *** CD-ROM | disk | FTP | other *** search
/ MacGames Sampler / PHT MacGames Bundle.iso / MacSource Folder / Samples from the CD / C and C++ / POSIX / ThinkCPosix / ThinkCPosix.h < prev    next >
Text File  |  1992-09-22  |  2KB  |  87 lines

  1. /* $Id: $ */
  2.  
  3. /*
  4.  * The aim of this project is to create a library ("Posix")
  5.  * including as many Posix functions as possible
  6.  * not included in the Think C ANSI and Unix libraries.
  7.  *
  8.  * The code has been collected from various sources.
  9.  * The following is a partial list of acknowledgements:
  10.  * mkdir(), opendir(), readdir(), closedir(), stat() --
  11.  *   Guido van Rossum, CWI, Amsterdam (July 1987)
  12.  *
  13.  * All code here is placed in the public domain
  14.  * Timothy Murphy School of Mathematics, Trinity College Dublin
  15.  * (tim@maths.tcd.ie)
  16.  */
  17.  
  18. #pragma once
  19.  
  20. #define const
  21.  
  22. #include <stdio.h>
  23. #include <stdlib.h>
  24. #include <stdarg.h>
  25. #include <string.h>
  26. #include <ctype.h>
  27. #include <time.h>
  28. #include <errno.h>
  29. #include <unix.h>
  30. #include <ansi_private.h>
  31. #include "sys/dir.h"
  32. #include "sys/stat.h"
  33. #include "sys/types.h"
  34. #include "sys/times.h"
  35. #include "pwd.h"
  36. #include "grp.h"
  37. #include "unistd.h"
  38. #include "utime.h"
  39.  
  40. #define EOS '\0'
  41. #define SEP ':'
  42.  
  43. #define NAME_MAX FILENAME_MAX
  44. #define PATH_MAX FILENAME_MAX
  45. #define OPEN_MAX FOPEN_MAX
  46.  
  47. extern int __pid, __ppid, __uid, __gid;
  48. #define ROOT_UID    0
  49. #define ROOT_GID    0
  50.  
  51. #define ENOEXEC    26
  52. #define ENOSYS    38
  53. #define EPERM    1
  54.  
  55. #define SIGQUIT SIGINT
  56. #define SIGHUP SIGINT
  57. #define SIGPIPE SIGINT
  58.  
  59. void *alloca(unsigned);
  60.  
  61. char *strupr(char*);
  62. int chdir(char*);
  63. int chmod(char*, mode_t);
  64. int mkdir(char*, int);
  65. FILE *popen(char*, char*);
  66. int pclose(FILE*);
  67. int fcntl(int, int, int, ...);
  68. int ioctl(int, int, ...);
  69. struct passwd *getpwent(void);
  70. struct passwd *getpwnam(char*);
  71. struct passwd *getpwuid(uid_t);
  72. struct group *getgrent(void);
  73. struct group *getgrname(char*);
  74. struct group *getgrgid(gid_t);
  75. void rewinddir(DIR*);
  76. /* clock_t times(struct tms*); */
  77. mode_t umask(mode_t);
  78. int wait(int*);
  79.  
  80. /* Possible replacements */
  81.  
  82. int Stat(char*, long, struct stat*);
  83. void Abort(void);
  84. int Open(char*, int, ...);
  85. void Perror(char*);
  86.  
  87.